# $Id: PKGBUILD 88557 2013-04-19 17:25:15Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>

pkgname=xmms2
pkgver=0.8DrO_o
pkgrel=12
pkgdesc="complete rewrite of the popular music player"
arch=('i686' 'x86_64')
url="http://xmms2.org/"
license=('LGPL')
backup=('etc/conf.d/xmms2d.conf')
depends=('sqlite' 'libmad')
makedepends=('alsa-lib' 'boost' 'curl' 'faad2' 'ffmpeg' 'fftw' 'flac' 'glib'
	'jack' 'libao' 'libmms' 'libmpcdec' 'libofa' 'libsamplerate' 'libshout'
	'libdiscid' 'libcdio-paranoia'
	'libvorbis' 'libxml2' 'mpg123' 'oss' 'perl' 'pulseaudio' 'pyrex'
	'ruby' 'smbclient' 'speex' 'wavpack' 'libmodplug' 'python' 'python2' 'libgme' 'avahi')
optdepends=('alsa-lib: ALSA audio output'
	    'avahi: announce xmms2d via bonjour/mDNS/zeroconf'
	    'boost: C++ language bindings'
	    'curl: play HTTP streams'
	    'faad2: AAC support'
	    'ffmpeg: WMA, avcodec & avformat support'
	    'fftw: calculations for visualization'
	    'flac: FLAC support'
	    'jack: JACK audio output'
	    'libao: liboa audio output'
	    'libgme: game-music-emu support'
	    'libdiscid: cdda support'
	    'libcdio-paranoia: cdda support'
	    'libofa: MusicDNS fingerprinting'
	    'libmms: play MMS streams'
	    'libmodplug: to play MOD files'
	    'libmpcdec: Musepack support'
	    'libsamplerate: vocoder support'
	    'libshout: Icecast audio output'
	    'libvorbis: Ogg Vorbis support'
	    'libxml2: XSPF and podcast support'
	    'mpg123: alternative MP3 plugin'
	    'oss: OSS audio output'
	    'perl: Perl language bindings'
	    'pulseaudio: PulseAudio audio output'
	    'pyrex: Python language bindings'
	    'ruby: Ruby language bindings'
	    'smbclient: direct CIFS/SMB access'
	    'speex: Speex support'
	    'wavpack: WavPack support')
#	    'sidplay: to play a Commodore 64 music files AKA zaks'
# we do not have sidplay 2 series in repos; also it's
# somehow connected with resid i guess(not in repos also)
conflicts=('xmms2-devel')
install=xmms2.install
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2"
	"xmms2d.conf"
	"xmms2d.rc"
	"xmms2d.service"
	"ffmpeg-0.11.diff")
md5sums=('84d5c05a70bfd31ed392a4e3f701eaa3'
         'af13c937bf3c86b77ae6820107aab9b8'
         '31ab8c0980966dbe3e9f5e80b7b82612'
         '47e68461589578e8a99857746c5b6f29'
         'e176971ef96807f72fa8fc17d260c20a')

build() {
  cd xmms2-${pkgver}/src/plugins/avcodec/
  # remove call to avcodec_init
  # http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=3211932c513338566b31d990d06957e15a644d13
  patch -Np0 -i ${srcdir}/ffmpeg-0.11.diff

  cd ${srcdir}/${pkgname}-${pkgver}

  # python2 fix
#  sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' waf
  sed -i 's|#include <cdio/cdda.h>|#include <cdio/paranoia/cdda.h>|' src/plugins/cdda/cdda.c
  sed -i 's|libsmbclient.h|samba-4.0/libsmbclient.h|' src/plugins/samba/{samba.c,wscript}

  ./waf configure --prefix=/usr \
	--with-optionals=python,launcher,xmmsclient++,xmmsclient++-glib,perl,ruby,nycli,pixmaps,et,mdns,medialib-updater \
	--with-ruby-archdir=`ruby -e 'puts RbConfig::CONFIG["vendorarchdir"]'` \
	--with-ruby-libdir=`ruby -e 'puts RbConfig::CONFIG["vendorlibdir"]'`
  ./waf build
}

package() {
  cd ${srcdir}/${pkgname}-${pkgver}

  ./waf --destdir=${pkgdir} install

  PYTHON=/usr/bin/python2 ./waf configure --prefix=/usr --with-optionals=python --without-xmms2d
  ./waf build
  ./waf --destdir=${pkgdir} install

  install -Dm0755 $srcdir/xmms2d.rc ${pkgdir}/etc/rc.d/xmms2d
  install -Dm0644 $srcdir/xmms2d.conf ${pkgdir}/etc/conf.d/xmms2d.conf
  install -Dm0644 $srcdir/xmms2d.service $pkgdir/usr/lib/systemd/system/xmms2d.service
}
